﻿package gear.ui.bd {
	import gear.core.IDispose;

	import flash.display.BitmapData;
	import flash.geom.Point;

	/**
	 * 位图单元
	 * 
	 * @author bright
	 * @version 20101015
	 */
	public class BDUnit implements IDispose {
		private var _offset : Point;
		private var _bd : BitmapData;

		/**
		 * 构造函数
		 * 
		 * @param offset Point 偏移坐标
		 * @param bd BitmapData 位图
		 */
		public function BDUnit(offset : Point = null, bd : BitmapData = null) {
			_offset = offset;
			_bd = bd;
		}

		/**
		 * 设置偏移
		 * @param value 偏移
		 */
		public function set offset(value : Point):void {
			_offset = value;
		}

		/**
		 * 获得偏移
		 * @return 偏移
		 */
		public function get offset():Point {
			return _offset;
		}

		/**
		 * 设置位图
		 * 
		 * @param value 位图
		 */
		public function set bd(value : BitmapData):void {
			if(_bd != null) {
				_bd.dispose();
			}
			_bd = value;
		}

		/**
		 * 获得位图
		 * 
		 * @return 		 */
		public function get bd():BitmapData {
			return _bd;
		}

		/**
		 * @inheritDoc
		 */
		public function dispose() : void {
			if(_bd != null) {
				_bd.dispose();
			}
		}
	}
}